Micron Document
🎖️GitЯра🎖️

build-logic/convention/src/main/kotlin/com/google/android/libraries/mapsplatform/secrets_gradle_plugin/Extensions.kt bd2863243bab6eb213401d949839a2bc74dde7e2 (bd286324) Text, 3.72 KB

T8b949e// Copyright 2021 Google LLC
T8b949e//
T8b949e// Licensed under the Apache License, Version 2.0 (the "License");
T8b949e// you may not use this file except in compliance with the License.
T8b949e// You may obtain a copy of the License at
T8b949e//
T8b949e// http://www.apache.org/licenses/LICENSE-2.0
T8b949e//
T8b949e// Unless required by applicable law or agreed to in writing, software
T8b949e// distributed under the License is distributed on an "AS IS" BASIS,
T8b949e// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
T8b949e// See the License for the specific language governing permissions and
T8b949e// limitations under the License.
T8b949e//
T8b949e// Vendored from google/secrets-gradle-plugin v2.0.1 — see SecretsPlugin.kt for why.
T8b949e// Modifications Copyright 2026 Meshtastic LLC:
T8b949e// - loadPropertiesFile resolves via isolated.rootProject instead of Project.file so it can be
T8b949e// called from a subproject under Isolated Projects (upstream google/secrets-gradle-plugin#104).
T8b949e// - Legacy Variant API helpers (AppExtension/LibraryExtension/InternalBaseVariant) removed and
T8b949e// buildConfigFields null-safe (nullable since AGP 9):
T8b949e// the legacy classes no longer exist in AGP 9 and were dead code paths here.
T8b949e// - the properties stream is closed via use {} instead of leaking a descriptor per load.

Tf0883e@fileTb4b4b4:Te6edf3SuppressTb4b4b4(Ta5d6ff"Ta5d6ffUnstableApiUsageTa5d6ff"Tb4b4b4)

Tff7b72package T7ee787com.google.android.libraries.mapsplatform.secrets_gradle_plugin

Tff7b72import T7ee787com.android.build.api.variant.ApplicationAndroidComponentsExtension
Tff7b72import T7ee787com.android.build.api.variant.BuildConfigField
Tff7b72import T7ee787com.android.build.api.variant.LibraryAndroidComponentsExtension
Tff7b72import T7ee787com.android.build.api.variant.Variant
Tff7b72import T7ee787org.gradle.api.Project
Tff7b72import T7ee787java.io.FileNotFoundException
Tff7b72import T7ee787java.util.Properties

Tff7b72fun Te6edf3ProjectTb4b4b4.Td2a8ffandroidAppComponentTb4b4b4(Tb4b4b4)Tb4b4b4: Te6edf3ApplicationAndroidComponentsExtension? Tff7b72=
Te6edf3extensionsTb4b4b4.Te6edf3findByTypeTb4b4b4(Te6edf3ApplicationAndroidComponentsExtensionTff7b72::Te6edf3classTb4b4b4.Te6edf3javaTb4b4b4)

Tff7b72fun Te6edf3ProjectTb4b4b4.Td2a8ffandroidLibraryComponentTb4b4b4(Tb4b4b4)Tb4b4b4: Te6edf3LibraryAndroidComponentsExtension? Tff7b72=
Te6edf3extensionsTb4b4b4.Te6edf3findByTypeTb4b4b4(Te6edf3LibraryAndroidComponentsExtensionTff7b72::Te6edf3classTb4b4b4.Te6edf3javaTb4b4b4)

Tff7b72fun Te6edf3ProjectTb4b4b4.Td2a8ffloadPropertiesFileTb4b4b4(Te6edf3fileNameTb4b4b4: Tffa657StringTb4b4b4)Tb4b4b4: Te6edf3Properties Tb4b4b4{
T8b949e// Load file, resolved against the root project directory. Upstream reached through
T8b949e// project.rootProject.file(), which Isolated Projects forbids from a subproject.
Tff7b72val Te6edf3propertiesFile Tff7b72= Te6edf3isolatedTb4b4b4.Te6edf3rootProjectTb4b4b4.Te6edf3projectDirectoryTb4b4b4.Te6edf3fileTb4b4b4(Te6edf3fileNameTb4b4b4)Tb4b4b4.Te6edf3asFile
Tff7b72if Tb4b4b4(Tff7b72!Te6edf3propertiesFileTb4b4b4.Te6edf3existsTb4b4b4(Tb4b4b4)Tb4b4b4) Tb4b4b4{
Tff7b72throw Te6edf3FileNotFoundExceptionTb4b4b4(
Ta5d6ff"Ta5d6ffThe file 'Tffd700${Te6edf3propertiesFileTb4b4b4.Te6edf3absolutePathTffd700}Ta5d6ff' could not be foundTa5d6ff"
Tb4b4b4)
Tb4b4b4}

T8b949e// Load contents into properties object
Tff7b72val Te6edf3properties Tff7b72= Te6edf3PropertiesTb4b4b4(Tb4b4b4)
Te6edf3propertiesFileTb4b4b4.Te6edf3inputStreamTb4b4b4(Tb4b4b4)Tb4b4b4.Te6edf3use Tb4b4b4{ Te6edf3propertiesTb4b4b4.Te6edf3loadTb4b4b4(Tffa657itTb4b4b4) Tb4b4b4}
Tff7b72return Te6edf3properties
Tb4b4b4}

Tff7b72private Tff7b72val Te6edf3javaVarRegexp Tff7b72= Te6edf3RegexTb4b4b4(Te6edf3pattern Tff7b72= Ta5d6ff"Ta5d6ff((?![a-zA-Z_Ta5d6ff\Tffd700$Te6edf30Ta5d6ff-9]).)Ta5d6ff"Tb4b4b4)

Tff7b72fun Te6edf3VariantTb4b4b4.Td2a8ffinjectTb4b4b4(Te6edf3propertiesTb4b4b4: Te6edf3PropertiesTb4b4b4, Te6edf3ignoreTb4b4b4: Te6edf3ListTff7b72<Tffa657StringTff7b72>Tb4b4b4) Tb4b4b4{
Tff7b72val Te6edf3ignoreRegexs Tff7b72= Te6edf3ignoreTb4b4b4.Te6edf3map Tb4b4b4{ Te6edf3RegexTb4b4b4(Te6edf3pattern Tff7b72= Tffa657itTb4b4b4) Tb4b4b4}
Te6edf3propertiesTb4b4b4.Te6edf3keysTb4b4b4.Te6edf3map Tb4b4b4{ Te6edf3key Tff7b72-Tff7b72>
Te6edf3key Tff7b72as Tffa657String
Tb4b4b4}Tb4b4b4.Te6edf3filter Tb4b4b4{ Te6edf3key Tff7b72-Tff7b72>
Te6edf3keyTb4b4b4.Te6edf3isNotEmptyTb4b4b4(Tb4b4b4) Tff7b72&Tff7b72& Tff7b72!Te6edf3ignoreRegexsTb4b4b4.Te6edf3any Tb4b4b4{ Tffa657itTb4b4b4.Te6edf3containsMatchInTb4b4b4(Te6edf3keyTb4b4b4) Tb4b4b4}
Tb4b4b4}Tb4b4b4.Te6edf3forEach Tb4b4b4{ Te6edf3key Tff7b72-Tff7b72>
Tff7b72val Te6edf3value Tff7b72= Te6edf3propertiesTb4b4b4.Te6edf3getPropertyTb4b4b4(Te6edf3keyTb4b4b4)Tb4b4b4.Te6edf3removeSurroundingTb4b4b4(Ta5d6ff"Ta5d6ff\"Ta5d6ff"Tb4b4b4)
Tff7b72val Te6edf3translatedKey Tff7b72= Te6edf3keyTb4b4b4.Te6edf3replaceTb4b4b4(Te6edf3javaVarRegexpTb4b4b4, Ta5d6ff"Ta5d6ff"Tb4b4b4)
T8b949e// Nullable since AGP 9: null when the buildConfig build feature is disabled.
Te6edf3buildConfigFieldsTff7b72?.Te6edf3putTb4b4b4(
Te6edf3translatedKeyTb4b4b4,
Te6edf3BuildConfigFieldTb4b4b4(Ta5d6ff"Ta5d6ffStringTa5d6ff"Tb4b4b4, Te6edf3valueTb4b4b4.Te6edf3addParenthesisIfNeededTb4b4b4(Tb4b4b4)Tb4b4b4, Tff7b72nullTb4b4b4)
Tb4b4b4)
Te6edf3manifestPlaceholdersTb4b4b4.Te6edf3putTb4b4b4(Te6edf3translatedKeyTb4b4b4, Te6edf3valueTb4b4b4)
Tb4b4b4}
Tb4b4b4}

Tff7b72fun Te6edf3StringTb4b4b4.Td2a8ffaddParenthesisIfNeededTb4b4b4(Tb4b4b4)Tb4b4b4: Tffa657String Tb4b4b4{
Tff7b72if Tb4b4b4(Te6edf3isEmptyTb4b4b4(Tb4b4b4)Tb4b4b4) Tb4b4b4{
Tff7b72return Tff7b72this
Tb4b4b4}
Tff7b72val Te6edf3charArray Tff7b72= Tff7b72thisTb4b4b4.Te6edf3toCharArrayTb4b4b4(Tb4b4b4)
Tff7b72if Tb4b4b4(Te6edf3length Tff7b72> T79c0ff1 Tff7b72&Tff7b72& Te6edf3charArrayTff7b72[T79c0ff0Tff7b72] Tff7b72=Tff7b72= Ta5d6ff'"' Tff7b72&Tff7b72& Te6edf3charArrayTff7b72[Te6edf3charArrayTb4b4b4.Te6edf3size Tff7b72- T79c0ff1Tff7b72] Tff7b72=Tff7b72= Ta5d6ff'"'Tb4b4b4) Tb4b4b4{
Tff7b72return Tff7b72this
Tb4b4b4}
Tff7b72return Ta5d6ff"Ta5d6ff\"Tffd700$Te6edf3thisTa5d6ff\"Ta5d6ff"
Tb4b4b4}

Served by rngit 1.5.1 - Generated in 0.05s